The increased use of technology in jobs increases the significance of data access to employees in a wide variety of professions and industries. Data access is typically obtained via computing devices, which are often separate or remote from a device on which the data is stored. The computing devices can thus be considered to have remote interfaces for accessing data. A design criterion to consider in data access systems is whether to have a blocking or non-blocking user interface. A blocking user interface requests data and does not allow control of the user interface until either the data access succeeds, or a timeout occurs. A non-blocking user interface, in contrast, allows a user to perform other functions with the user interface after a request for data access is made, even if the request has not yet succeeded. The user interface, whether block or non-blocking, interfaces with a data access interface that services or executes the request and accesses the data. A non-blocking user interface is generally considered to operate “asynchronously” to the data access interface. A blocking user interface is generally considered to operate “synchronously” to the data access interface.
Although the interfaces are generally considered to be asynchronous or synchronous with respect to each other, the underlying backend data access mechanisms are traditionally synchronous with respect to the data access interface. Thus, a data access request from a user interface is typically processed by the data access interface, and the request executed synchronously with respect to an update mechanism of the remote interface.
Besides being traditionally synchronous in data updating, another challenge to remote interfacing is the traditional dependency of the data access interface on the user interface. The operation of the data access interface traditionally is customized to a particular type of user interface. When designing a data access system, porting data access functionality to a different user interface previously required rebuilding the backend data access interface mechanisms. Thus, the previously known interfaces for monitoring of remote systems have drawbacks in functionality as well as portability.